# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @File  : 分类评估方法-ROC AUC.py
# @Author: dongguangwen
# @Date  : 2025-02-07 10:35
import numpy as np
from sklearn.metrics import roc_auc_score

# 生成示例数据
# y_true: 真实的标签（0或1）
# y_score: 模型预测的概率值（通常是正类的概率）

# 假设我们有100个样本
np.random.seed(42)  # 设置随机种子以确保结果可重复
y_true = np.random.randint(0, 2, size=100)  # 生成100个0或1的随机标签
print(y_true)
y_score = np.random.rand(100)  # 生成100个0到1之间的随机概率值
# print(y_score)

# 计算ROC AUC分数
roc_auc = roc_auc_score(y_true, y_score)

# 输出结果
print(f"ROC AUC Score: {roc_auc:.4f}")

"""
[0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 0 0 1 1 1 0 1
 0 0 0 0 0 1 1 1 1 1 0 1 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 1
 0 1 1 1 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 0]
ROC AUC Score: 0.5122
"""